package com.ctshk.rpc.visa.req.visa;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 签证新增
 * </p>
 *
 * @author 陈雷
 * @since 2021-1-26
 */
@Data
@ApiModel(value="VisaFreeCountriesReq对象", description="签证新增")
public class VisaSaveReq implements Serializable {
    @ApiModelProperty(value = "id")
    private Long id;

    @NotNull(message = "请输入签证国家/地区")
    @ApiModelProperty(value = "签证国家/地区",required = true)
    private String countryName;

    @NotNull(message = "请输入国家id")
    @ApiModelProperty(value = "国家id",required = true)
    private Long countryId;

    @NotNull(message = "请输入产品名称")
    @ApiModelProperty(value = "产品名称",required = true)
    private String name;

    @NotNull(message = "请输入签证类型")
    @ApiModelProperty(value = "签证类型",required = true)
    private String visaType;

    @NotNull(message = "请输入签证类型id")
    @ApiModelProperty(value = "签证类型id",required = true)
    private Long visaTypeId;

    @NotNull(message = "请输入负责人员id")
    @ApiModelProperty(value = "负责人员id",required = true)
    private Long responsibleId;

    @NotNull(message = "请输入可停留期限")
    @ApiModelProperty(value = "可停留期限",required = true)
    private String 	stayTime;

    @ApiModelProperty(value = "签证有效期",required = false)
    private String 	visaVaildDate;

    @ApiModelProperty(value = "入境次数",required = false)
    private String vaildTimes;

//    @ApiModelProperty(value = "入境次数id",required = false)
//    private Long vaildTimesId;

    @NotNull(message = "请输入送签方式")
    @ApiModelProperty(value = "送签方式",required = true)
    private Integer sendVisaType;

    @NotNull(message = "请输入所需资料")
    @ApiModelProperty(value = "所需资料",required = true)
    private String requiredInformation;

    @ApiModelProperty(value = "附件",required = true)
    private String filesJson;

    @ApiModelProperty(value = "备注",required = true)
    private String remark;

    @ApiModelProperty(value = "办理须知",required = true)
    private String handleInstruction;

    @ApiModelProperty(value = "免签国家列表")
    private List<VisaFreeCountriesReq> visaFreeCountriesReqList;

    @NotEmpty(message = "成本列表不能为空")
    @ApiModelProperty(value = "成本设置列表")
    private List<VisaTypeReq> visaTypeReqList;
}